home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 21
/
Cream of the Crop 21 (Terry Blount) (October 1996).iso
/
program
/
libkb100.zip
/
LIBKB-1.00
/
CONFIG
/
LINUX
/
ELF_SO.MK
< prev
Wrap
Text File
|
1996-07-23
|
2KB
|
62 lines
#
# Makefile for Linux ELF shared library
#
# libkb -- a free, advanced and portable low-level keyboard library
# Copyright (C) 1995, 1996 Markus Franz Xaver Johannes Oberhumer
# For conditions of distribution and use, see copyright notice in kb.h
#
# /***********************************************************************
# // imported vars:
# // $(lib_name) $(major_shared) $(minor_shared)
# // $(SRCS)
# // $(INSTALL) $(INSTALL_LIBDIR)
# //
# // exported vars:
# // $(SHARED_LIB) $(SHARED_OBJS) $(SHARED_CFLAGS)
# //
# // exported targets:
# // shared_lib shared_lib_install shared_lib_clean
# // $(SHARED_LIB)
# //
# ************************************************************************/
.PHONY: shared_lib shared_lib_install shared_lib_clean
SHARED_LIB = lib$(lib_name).so.$(major_shared).$(minor_shared)
SHARED_OBJS = $(SRCS:%.c=%.so)
SHARED_CFLAGS += -fPIC
%.so : %.c
$(COMPILE.c) $(SHARED_CFLAGS) $< $(OUTPUT_OPTION)
$(SHARED_LIB): $(SHARED_OBJS)
gcc -shared -Wl,-soname,lib$(lib_name).so.$(major_shared) -o $(SHARED_LIB) $(SHARED_OBJS)
chmod a+x $(SHARED_LIB)
$(RM) lib$(lib_name).so.$(major_shared)
ln -s $(SHARED_LIB) lib$(lib_name).so.$(major_shared)
$(RM) lib$(lib_name).so
ln -s lib$(lib_name).so.$(major_shared) lib$(lib_name).so
shared_lib: $(SHARED_LIB)
shared_lib_clean:
$(RM) $(SHARED_LIB) lib$(lib_name).so.$(major_shared) lib$(lib_name).so $(SHARED_OBJS)
# /***********************************************************************
# // installation
# ************************************************************************/
shared_lib_install: $(SHARED_LIB)
$(INSTALL) $^ $(INSTALL_LIBDIR)/
$(RM) $(INSTALL_LIBDIR)/lib$(lib_name).so.$(major_shared)
ln -s $(INSTALL_LIBDIR)/$(SHARED_LIB) $(INSTALL_LIBDIR)/lib$(lib_name).so.$(major_shared)
$(RM) $(INSTALL_LIBDIR)/lib$(lib_name).so
ln -s $(INSTALL_LIBDIR)/lib$(lib_name).so.$(major_shared) $(INSTALL_LIBDIR)/lib$(lib_name).so